package com.liuyun;

import java.security.Provider;
import java.security.Security;

/**
 * <p>
 * Copyright: (C), 2021/1/20 23:38
 * <p>
 * <p>
 * Company Information & Data Security Solutions Co., Ltd.
 *
 * @author LiuYun liujw@idss-cn.com
 * @version 1.0
 */
public class JdkSupport {

    public static void main(String[] args) {
        System.out.println("-------列出加密服务提供者-----");
        Provider[] pro = Security.getProviders();
        for (Provider p : pro) {
            System.out.println("Provider:" + p.getName() + " - version:" + p.getVersion());
            System.out.println(p.getInfo());
        }
        System.out.println("");
        System.out.println("-------列出系统支持的消息摘要算法：");
        for (String s : Security.getAlgorithms("MessageDigest")) {
            System.out.println(s);
        }
        System.out.println("-------列出系统支持的生成公钥和私钥对的算法：");
        for (String s : Security.getAlgorithms("KeyPairGenerator")) {
            System.out.println(s);
        }
//        System.out.println("-------列出系统支持的对称加密的算法：");
//        for (String s : Security.getAlgorithms("Cipher")) {
//            System.out.println(s);
//        }
        System.out.println("-------列出系统支持的对称加密的算法：");
        for (String s : Security.getAlgorithms("KeyGenerator")) {
            System.out.println(s);
        }
//        System.out.println("-------列出系统支持的签名算法：");
//        for (String s : Security.getAlgorithms("Signature")) {
//            System.out.println(s);
//        }
    }
}
